// Image.h: interface for the Image class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_IMAGE_H__EC77690C_8546_11D2_A42D_006097A44215__INCLUDED_)
#define AFX_IMAGE_H__EC77690C_8546_11D2_A42D_006097A44215__INCLUDED_

#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000

class CLASS_DECL_D Image : public AWTObject
{
DECLARE_DYNAMIC(Image)
public:
	Image();
	Image(LPTSTR file);
	Image(CString& file);
	virtual ~Image();

	void setFile(LPTSTR file)
		{setFile(CString(file));}
	void setFile(CString& file);
	CString& getFile()
		{return m_file;}

	virtual void paint(CDC* pDC, AWTCanvas* canvas) = 0;
	virtual CSize getSize() = 0;
	virtual BOOL loadImage()
		{return FALSE;}
	virtual BOOL isValid() = 0;

private:
	void construct(CString& file)
	{
		m_file = file;
	}	

protected:
	CString m_file;
};

#endif // !defined(AFX_IMAGE_H__EC77690C_8546_11D2_A42D_006097A44215__INCLUDED_)
